/* eslint-disable */
import { createApp } from 'vue'
import App from './App.vue'
import router from './router'
// 引入 ElementPlus
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'
// Vue3 懒加载方案
import VueLazyLoad from 'vue3-lazyload'
// 更现代的请求库推荐使用axios或fetch替代方案
import axios from 'axios'

const app = createApp(App)

// 新版懒加载配置（使用更现代的IntersectionObserver API）
app.use(VueLazyLoad, {
  preLoad: 1.3,
  attempt: 1,
  observerOptions: {
    rootMargin: '0px',
    threshold: 0.1
  }
})

// 现代请求配置方案（推荐使用环境变量）
const baseURL = import.meta.env.VITE_API_BASE_URL || 'http://www.dolmo.top:8888/api'
const imgServer = import.meta.env.VITE_IMG_SERVER || 'http://www.dolmo.top:8888/api/img'

const http = axios.create({
  baseURL,
  timeout: 5000
})

// 全局属性挂载方式变更
app.config.globalProperties.$http = http
app.config.globalProperties.imgServer = `${imgServer}/name/resized_`
app.config.globalProperties.uploadImg = `${imgServer}/upload`

// 挂载到Vite环境变量
if (import.meta.env.PROD) {
  app.config.performance = false
}

app.use(router)
// 使用 ElementPlus 替代 ElementUI
app.use(ElementPlus)
app.mount('#app')